package lambda_expression.method_reference;

/**
 * 方法引用：
 *      对象 :: 非静态方法
 *      类  :: 静态方法
 *          方法引用使用要求： 函数接口中抽象方法的形参列表和返回值类型，与方法引用的方法 的形参列表和返回值类型都相同
 *      类  :: 非静态方法
 *          使用注意: 若Lambda参数列表中的第一个参数是实例方法的调用者，
 *          而第二个参数是实例方法的参数时，可以使用 类::实例方法名。
 *          这种方法引用的方式就不需要满足保证引用方法的参数列表、返回值类型与我们当前所要实现的函数式接口方法的参数列表、
 *          返回值类型保持一致这一规则了
 *
 *  构造器引用
 *      类 :: new
 *          和方法引用类似，函数式接口的抽象方法形参列表和构造器形参列表一致；抽象方法的返回值类型  即为  构造器所属类的类型
 *  数组引用
 *      String[] :: new
 *          可以把数组看作是一个特殊的类，那么和构造器引用一样了
 */
public class Test {

}
